package model.components.nodes.node;

public class VirtualSwitch extends VirtualNode
{
	public static final String NAME_PREFIX = "VirtualSwitch";
	
	public VirtualSwitch( String networkName, int startingDate, int endingDate, int number, String operatingSystem, String virtualEnvironment, int cpu, int memory )
	{
		super( networkName, startingDate, endingDate, VirtualSwitch.NAME_PREFIX, number, Node.SWITCH_TYPE, operatingSystem, virtualEnvironment, cpu, memory, Node.GREY_SWITCH, Node.GREEN_SWITCH, Node.YELLOW_SWITCH, Node.RED_SWITCH );
	}
	
	@Override
	public VirtualSwitch getCopy()
	{
		VirtualSwitch virtualSwitch = new VirtualSwitch( this.getNetworkName(), this.getStartingDate(), this.getEndingDate(), this.getNumber(), this.getOperatingSystem(), this.getVirtualEnvironment(), this.getCpu(), this.getMemory() );
		virtualSwitch.setInitialNumber( this.getInitialNumber() );
		virtualSwitch.setNamePrefix( this.getNamePrefix() );
		virtualSwitch.setType( this.getType() );
		virtualSwitch.setTimeStamp( this.getTimeStamp() );
		virtualSwitch.setPhysicalNode( this.getPhysicalNode() );
		virtualSwitch.setSelected( this.isSelected() );
		virtualSwitch.setCpuUnitTimeUnitPrice( this.getCpuUnitTimeUnitPrice() );
		virtualSwitch.setMemoryUnitTimeUnitPrice( this.getMemoryUnitTimeUnitPrice() );
		
		return virtualSwitch;
	}
	
}
